package com.achievement.domain.vo;

import com.achievement.domain.vo.author.PatentAuthorVO;
import com.common.annotation.Excel;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;

import java.util.Date;
import java.util.List;
import java.util.Map;

@Data
public class PatentVO {

    private String id;
    @Excel(name = "申请号")
    private String applyCode;
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "申请日",dateFormat = "yyyy-MM-dd")
    private Date applyDate;
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "授权公告日")
    private Date authorizeDate;
    @Excel(name = "专利名称")
    private String name;
    @Excel(name = "发明人")
    private String inventorNames;
    private String lawStatus;
    private String agency;
    private String agencyId;
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "公开日",dateFormat = "yyyy-MM-dd")
    private Date openDate;
    @Excel(name = "授权公告号")
    private String authorizeCode;
    @Excel(name = "公开号")
    private String openCode;
    @Excel(name = "申请人")
    private String applyInfo;
    private String agent;
    @Excel(name = "专利类型")
    private String typeId;
    private String numOfWeights;
    @Excel(name = "IPC主分类号")
    private String patentIpc;
    private String unauthorizedReasons;
    private String causesOfFailure;
    private String statusDate;
    @Excel(name = "所属单位")
    private String unitId;
    @Excel(name = "专利范围")
    private String scopeId;
    @Excel(name = "专利状态")
    private String stateId;
    @Excel(name = "学校署名")
    private String schoolSign;
    private String patentee;
    private String invalidFlag;
    private String reductionRate;
    @Excel(name = "合作类型")
    private String cooperationType;
    @Excel(name = "是否职务专利")
    private String isDuty;
    @Excel(name = "是否PCT专利")
    private String isPct;
    @Excel(name = "PCT专利名称")
    private String pctName;
    @Excel(name = "PCT专利申请号")
    private String pctCode;
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "PCT专利申请日期",dateFormat = "yyyy-MM-dd")
    private Date pctDate;
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "PCT专利优先权日",dateFormat = "yyyy-MM-dd")
    private Date priorityDate;
    private String enterCountry;
    private String note;
    private String fileIds;

    private Integer authorNumber;
    private String divisionId;
    private String checkstatus;
    private String checkdate;
    private String checker;
    @Excel(name = "是否代理")
    private String isAgency;
    @Excel(name = "通讯发明人")
    private String txAuthor;
    @Excel(name = "通讯发明人电话")
    private String txAuthorTel;
    private String agencyStatus;
    private String joinFileId;

    private String crednetialFileId;
    @Excel(name = "国家地区")
    private String region;
    private String authorpids;
    private String authorunitids;
    private String completedatastatus;
    private String inventorMatchingState;
    @Excel(name = "代理公司名称")
    private String agencyName;

    private List<PatentAuthorVO> authorList;

    private List<Map<String,String>> fileList;

    private List<Map<String,String>> joinFileList;

    private List<Map<String,String>> crednetialFileList;
    private String processInstanceId;
    private Boolean isAuditor;

    private String taskId;
}
